This invention relates to an asynchronous transfer mode network and, more particularly, to a buffer controller for an available bit rate service in the asynchronous transfer mode network and a method for controlling thereof.
An available bit rate service is proposed for an asynchronous transfer mode in ATM (Asynchronous Transfer Mode) Forum Traffic Management Specification version 4.0, 1996. An Allowable cell rate means the transmission cell rate at a terminal, and is dynamically changed depending upon the status of the network. The cell transmission rate is managed through a feedback control in the available bit rate service, and the feedback control reduces the cells to be disposed. Thus, the available bit rate service aims at provision of equal right to occupy each part of the network between users.
The available bit rate service is detailed hereinbelow. In the following description, term xe2x80x9cterminalxe2x80x9d is applied to not only actual terminals for the users but also virtual transmission terminals and virtual receiving terminals such as a virtual source and a virtual destination defined in the ATM Forum Traffic Management Specification version 4.0.
FIG. 1 illustrates the prior art asynchronous transfer mode network 1. A switching unit 2 is incorporated in the prior art asynchronous transfer mode network 1, and terminals 3/4 are connected to the asynchronous transfer mode network 1. The terminal 3 and the terminal 4 are assumed to be a data source and a data destination, respectively. When the terminal 3 transmits data to the terminal 5, the terminal 3 firstly transmits a forward resource management cell, which is abbreviated as xe2x80x9cFRMxe2x80x9d in FIG. 1, to the switching unit 2, and the switching unit 2 transfers the forward resource management cell FRM to the terminal 4. When the terminal 4 receives the forward resource management cell FRM, the terminal 4 returns a backward resource management cell, which is abbreviated as xe2x80x9cBRMxe2x80x9d in FIG. 1, through the switching unit 2 to the terminal 3. The switching unit 2 has pieces of status data information representative of the congestion of the network 1, and writes control bits ER, a congestion indication bit CI and a no increase bit NI in the forward resource management cell FRM or the backward resource management cell BRM. The control bits ER are representative of an explicit rate, and the explicit rate is determined on the basis of the current status of the network 1. The congestion indication bit CI indicates whether the network is in congestion status or not, and the no increase bit NI indicates whether the terminal 3/4 is allowed to increase the transmission rate or not. The congestion indication bit CI is changed between xe2x80x9c1xe2x80x9d indicative of congestion status and xe2x80x9c0xe2x80x9d indicative of non-congestion status. The no increase bit NI is also changed between xe2x80x9c1xe2x80x9d indicative of prohibition from increase of transmission rate and xe2x80x9c0xe2x80x9d indicative of permission to increase the transmission rate. The terminal 3 maintains or changes the transmission rate of data cells on the basis of the control bits, the congestion indication bit and the no increase bit NI written in the backward resource management cell BRM, and transmits data cells through the switching unit 2 to the terminal 4 at the data transmission rate. Thus, the terminals 3/4 carry out the data transmission under the control of the switching unit.
As described hereinbefore, a virtual source and a virtual destination are defined for the available bit rate service. The virtual source and the virtual destination are located in the asynchronous transfer mode network, and virtually behave as the terminals. In other words, the virtual source and the virtual destination virtually process the forward resource management cell FRM and the backward resource management cell BRM, and divide the transmission control loop for the forward/backward resource management cells into segments. The division into the segments is desirable, because the segments accelerate the transmission of the control data information. The acceleration of the transmission results in improvement of the rate controlling characteristics in the terminal 3.
FIG. 2 illustrates another prior art asynchronous transfer mode network for the available bit rate service, and the prior art asynchronous transfer mode network 10 provides a data transmission control loop between terminals 11/12. In the following description, a combination of the virtual source VS and the virtual destination VD is referred to as xe2x80x9cvirtual terminal modulexe2x80x9d, and a position closer to a transmission terminal and another position closer to a receiving terminal are called as xe2x80x9cupstream sidexe2x80x9d and xe2x80x9cdownstream sidexe2x80x9d, respectively.
Two virtual terminal modules 13/14 are inserted into the transmission control loop, and divide the data transmission control loop into segments 15a/15b/15c. The terminal 11 communicates with the virtual terminal module 14, and a forward resource management cell FRM1 and a backward resource management cell BRMI are used for the transmission control therebetween. The virtual terminal modules 13 and 14 communicate with each other by using a forward resource management cell FRM2 and a backward resource management cell BRM2. The virtual terminal module 14 communicates with the terminal 12, and a forward resource management cell FRM3 and a backward resource management cell BRM3 are used for the transmission control therebetween. The data transmission is carried out from the terminal 11 through the virtual terminal modules 13/14 to the terminal 12, and the data transmission rate is varied between the segments 15a/15b/15c. 
In the prior art asynchronous transfer mode networks 1/10, burst traffic from multiple terminals, variation of area available for the data transmission and variation of transmission rate due to congestion at a terminal cause the switching unit 2 and the virtual terminal module 13/14 to pile up a large amount of data cells to be transferred. Cell buffers are provided in the switching unit 2 and the virtual terminal module 13/14 so as to temporarily store the data cells. When the data cells are piled up in the cell buffer, the switching unit and the virtual terminal module enter into congestion status. Therefore, the prior art asynchronous transfer mode networks 1/10 require a buffer controller for prohibiting the cell buffer from the congestion status.
Japanese Patent Publication of Unexamined Application No. 8-223174 teaches a controller for the cell buffers. According to the Japanese Patent Publication of Unexamined Application, the congestion detector monitors the buffer memory to see how many asynchronous transfer mode cells enter into a queue. When the queue reaches a predetermined length or an asynchronous transfer mode cell overflows the buffer memory, the controller determines that the asynchronous transfer mode network has entered into congestion status, and notifies plural paths selected from a connection table. Thus, the criterion is the queue length or the number of asynchronous transfer mode cells stored in the buffer memory
Another method for controlling congestion status is disclosed in Japanese Patent Publication of Unexamined Application No. 7-183886. According to the Japanese Patent Publication of Unexamined Application, two pairs of thresholds, i.e., four thresholds, are given to the buffer in each node, and the buffer is monitored to see whether or not the queue reaches any one of the thresholds. The first pair of thresholds offer a boundary for notification of the congestion status to a receiving terminal and a boundary for the recovery therefrom. The second pair of thresholds offer a boundary for an interruption of cell transfer from a transmitting terminal and a boundary for a recovery therefrom. Thus, the queue length or the number of asynchronous transfer mode cells is the criteria of the congestion status.
Yet another congestion controlling method is disclosed in Japanese Patent Publication of Unexamined Application No. 7-95212. According to the Japanese Patent Publication of Unexamined Application, either high or low priority is given to each asynchronous transfer mode cell. When the queue in the first-in first-out buffer reaches a predetermined length, the low-priority asynchronous transfer mode cell is discarded. The criterion for the congestion status is the queue length or the number of asynchronous transfer mode cells stored in the first-in first-out buffer.
Still another congestion controlling method is disclosed in Japanese Patent Publication of Unexamined Application No. 6-30019. The load manager monitors the common buffer memory to see whether the maximum number of asynchronous transfer mode cells exceeds a predetermined threshold or not. When the maximum number exceeds the threshold, the load manager recognizes the congestion status. Thus, the criterion for the congestion status is the queue length or the number of asynchronous transfer mode cells stored in the common buffer memory.
Various calculating methods for the transmission cell rate have been proposed for the switch for the available bit rate service, and the ATM Forum Traffic Management Specification Version 4.0 proposes one example. However, the controlling characteristics for the congestion status are different between the proposed calculating methods. Promptitude of the rate change in transition period, an amplitude of oscillation in the rate change in stable state and the processing speed for the queue in the buffer are examples of the controlling characteristics. Only one calculating method is employed in the prior art switching unit 2, and the transmission cell rate is unitarily determined through the method regardless of degree of the congestion and duration of the congestion status.
As described hereinbefore, the queue length is compared with a threshold in the prior art controlling methods so as to determine congestion status. A problem is encountered in the prior art controlling methods when the transmission cell rate is too small for the channel to quickly recover from the congestion status. In detail, when a channel enters congestion status, the transmission cell rate is reduced to a predetermined value. If the queue length is close to the threshold after entry into congestion status, the predetermined transmission cell rate is too small for the channel to quickly recover from congestion status. Furthermore, if a transmission terminal completes the transmission of asynchronous transfer mode cells to the buffer at a queue length that slightly exceeds the threshold, the prior art controller notifies the transmission terminal of the congestion status so as to reduce the transmission cell rate. Although the channel gradually recovers from congestion status, the transmission terminal restarts the transmission of asynchronous transfer mode cells at the reduced transmission cell rate.
Another problem is unexpected overflow of asynchronous transfer mode cells. The buffer is assumed to increase and decrease the queue to be slightly below the threshold for a long time. The prior art controller does not notify the transmission terminal of the congestion status, and keeps the transmission cell rate constant. In this situation, if burst traffic takes place, the buffer can not store all the asynchronous transfer mode cells, and part of the asynchronous transfer mode cells overflow the buffer. Thus, the prior art controllers can not achieve a low cell loss ratio in spite of the available bit rate service.
Yet another problem is encountered in the prior art shared buffer type controlling system in unevenness between virtual connections. In this instance, virtual queues are formed at the virtual connections. There is a possibility that a certain virtual connection occupies the whole common buffer. In this situation, asynchronous transfer mode cells are liable to overflow the buffer at another virtual connection. The overflow causes loss of cells. Otherwise, the transmission cell rate is drastically reduced so as to prevent the asynchronous transfer mode cells from overflow. Thus, unevenness takes place between the virtual connections.
It is therefore an important object of the present invention to provide a controller, which makes an asynchronous transfer mode network achieve a high throughput without sacrifice of the cell loss ratio.
It is also an important object of the present invention to provide a method of controlling an available bit rate service for a high throughput without sacrifice of the cell loss ratio.
To accomplish the object, the present invention proposes to change a transmission cell rate depending upon a lapse of time from entry into congestion status.
In accordance with one aspect of the present invention, there is provided a buffer controller operative to transfer data cells from a transmitting terminal to a receiving terminal both incorporated in an asynchronous transfer mode network for an available bit rate service comprising a cell buffer for temporarily storing at least one queue of the cells, a judging means for determining a current degree of congestion status in the cell buffer on the basis of a lapse of time after entry into the congestion status and said length of the at least one queue, a calculating means for calculating transmission cell rates different from one another through different algorithms, and a selecting means responsive to a control signal representative of the current degree of congestion status so as to cause the calculating means to supply one of the transmission cell rates to the transmission terminal.
In accordance with another aspect of the present invention, there is provided a method of controlling a cell transmission from a transmitting terminal to a receiving terminal both incorporated in an asynchronous transfer mode network for an available bit rate service, comprising the steps of checking a queue of cells to see whether or not a queue length is indicative of congestion status, counting a lapse of time after entry into the congestion status, determining a current degree of the congestion status on the basis of the queue length and the lapse of time, changing a transmission cell rate to a value appropriate to the current degree of congestion status, and notifying the transmitting terminal of the value of the transmission cell rate so as to vary the amount of the cells supplied from the transmitting terminal per unit time.